The present disclosure relates generally to communication systems, and more particularly, to apparatus and methods of managing polling in devices implementing proximity services (ProSe).
Wireless communication systems are widely deployed to provide various telecommunication services such as telephony, video, data, messaging, and broadcasts. Typical wireless communication systems may employ multiple-access technologies capable of supporting communication with multiple users by sharing available system resources (e.g., bandwidth, transmit power). Examples of such multiple-access technologies include code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, single-carrier frequency division multiple access (SC-FDMA) systems, and time division synchronous code division multiple access (TD-SCDMA) systems.
These multiple access technologies have been adopted in various telecommunication standards to provide a common protocol that enables different wireless devices to communicate on a municipal, national, regional, and even global level. An example of an emerging telecommunication standard is Long Term Evolution (LTE). LTE is a set of enhancements to the Universal Mobile Telecommunications System (UMTS) mobile standard promulgated by Third Generation Partnership Project (3GPP). It is designed to better support mobile broadband Internet access by improving spectral efficiency, lower costs, improve services, make use of new spectrum, and better integrate with other open standards using OFDMA on the downlink (DL), SC-FDMA on the uplink (UL), and multiple-input multiple-output (MIMO) antenna technology. However, as the demand for mobile broadband access continues to increase, there exists a need for further improvements in LTE technology. Preferably, these improvements should be applicable to other multi-access technologies and the telecommunication standards that employ these technologies.
LTE systems support ProSe functionality for user equipment (UE), wherein UEs in proximity may discover each other via an Evolved Packet Core (EPC)-based solution called EPC-level ProSe discovery. The process involves communication procedures between the UE and a network server implementing a ProSe function. The 3GPP stage 3 specification for ProSe (3GPP TS 24.334, Proximity-services (ProSe) User Equipment (UE) to Proximity-services (ProSe) Function Protocol aspects; Stage 3, hereby incorporated by reference in its entirety) mandates the Hypertext Transfer Protocol (HTTP) as transport protocol for these communication procedures.
One of the challenges in using HTTP is to enable server-initiated transactions, such as the Proximity Alert procedure, whereby the network server notifies a polling UE that another UE is in proximity. Because HTTP transactions are, by default, always client-initiated, one of the commonly-used approaches to address this is a “polling” procedure, whereby the client UE frequently transmits a polling message to query the HTTP server to determine if the server has any data for the client UE (e.g., a Proximity Alert). If there is no data for the client UE, the server replies to the polling message with an empty HTTP response.
However, one downside to the above-noted polling procedure is the delivery delay caused by inter-polling intervals, as the server must wait to deliver any data or event indication (e.g., a Proximity Alert) until after the next incoming polling message from the client UE. An enhancement to this approach, called “long polling,” allows the server to not immediately respond to the client. Instead, the server that implements “long polling” keeps the HTTP connection open and only responds when the server has data available or after a pre-defined timer expires. The long polling scheme can reduce the delivery latency, but also has several drawbacks. For example, keeping the HTTP connection open blocks any new outgoing HTTP request from the client UE side because the HTTP client is not able to send a new polling message if a prior polling procedure has not completed. Additionally, another drawback is that the ProSe function managed by the HTTP server must maintain an active HTTP connection with each client UE, which adds significant overhead when the number of client UEs increases.
As such, improvements in UE ProSe polling and ProSe function implementation procedures are desired.